home *** CD-ROM | disk | FTP | other *** search
/ Amiga News 96 / Amiga News 96.iso / dpat / dpat128 / petit_joueur / pj.doc < prev    next >
Text File  |  1996-08-02  |  7KB  |  183 lines

  1.                        +-----------------------------+
  2.                        |  PETIT-JOUEUR  Version 2.0  |
  3.                        |                             |
  4.                        |   © KalimérO  Juillet 1996  |
  5.                        +-----------------------------+   
  6.  
  7.  
  8.  
  9.     Tout est parti d'un petit défi lancé par un pote :
  10.  
  11.   - "Dis-moi, serais-tu capable de me programmer un player de modules
  12.      ProTracker de 10 Ko maximum sans passer par une ligne de commande ?
  13.      J'en ai marre des players qui en mettent plein la vue avec des tonnes de
  14.      boutons partout dont on ne se sert pratiquement jamais, mais qui
  15.      squattent un max de mémoire !! Je cherche quelque chose de simple, petit
  16.      et pratique.."
  17.  
  18.   - "Oula.. 10 Ko, ça fait court ça.. surtout avec une interface graphique..
  19.      Disons 15 !"
  20.     
  21.   - "Bah, tu fais dans la facilité, là !! Allez, en 12 Ko maxi, mais je veux
  22.      une interface à la gadtools avec sélecteur de fichier ASL et compagnie !
  23.      Alors, qu'en dis-tu ?"
  24.  
  25.   - "Rah, t'es un vrai requin en affaires, toi !! Mais je rélève le défi, ça
  26.      ne doit pas être si compliqué que ça finallement !"
  27.  
  28. ..et puis il est parti..
  29. Je me suis retrouvé tout seul et j'ai commencé à réfléchir (ça m'arrive..)
  30. Quel outil allais-je utiliser ?
  31.  
  32. Le GFA ? Non, avec seulement 12 Ko, il ne faut pas y compter..
  33. L'Amos ? Encore moins ! Rien que la bibliothèque Amos fait 46 Ko !!
  34. Le Pascal ?  Aaaaargh !! Pitié, j'en ai assez souffert !!
  35. Le C ?     Pourquoi pas ! Ah non...Je ne sais pas coder en C !!!
  36. L'Assembleur ? Je pourrais.. en Z80 !!
  37. Le Step 5 ou le PL7-3 ?  Non, ça c'est sur automate, pas sur ordinateur !
  38. Le Logo ?  Ben voyons !!
  39. Le Forth ? T'en a d'autres comme ça ?!!
  40. Oui ! Le Cobol ?  Arrête !
  41. Le Lisp ?  Pfffff..
  42. Le Fortran ?  Ca suffit !!
  43. Le BrainFuck ? Le Modula ? Le Yax ? L'Arexx ? Le J ? Le E ? STOOOOOOOOOOOP !!!!
  44. (...)
  45. Attends...Qu'est-ce-que t'as dit en dernier, là ?
  46. J'ai dit "STOOOOOOOOOOOP !!!!"
  47. Non !! Avant..
  48. Euh...
  49. Oui ! Voilà, je le tiens mon langage !! Le E !!
  50.  
  51. Dérivé du C et du Modula avec la prise de tête en moins pour le code, hautement
  52. procédural, programmation orientée objet, assembleur inline, des tonnes de
  53. modules (includes) fournis, une vitesse de compilation hyper rapide, produit
  54. des exécutables minis, etc...
  55. Bref, l'idéal pour ce genre de programme !
  56.  
  57. Et voilà.. Après quelques heures de bidouille acharnée, Petit-Joueur est né !
  58. Il dépasse les 12ko mais bon...
  59. Par contre, limite oblige, il ne lit QUE les modules ProTracker..
  60. Petit-Joueur ne s'exécute que s'il est lancé sous le système 2 ou plus.
  61.  
  62.  
  63. Mais voilà, mon pote est revenu il y a peu..
  64.  
  65.   - "Dis-moi, il est bien sympa ton proggy mais j'ai un problème.."
  66.     
  67.   - "Oui, je t'écoute"
  68.     
  69.   - "Bin parmi mes centaines de modules, j'en ai des tonnes qui sont
  70.      compressés avec PowerPacker et je ne peux pas les lire avec Petit-Joueur."
  71.  
  72.   - "Mouaip..je te vois venir.. Bon, je vais voir ce que je peux faire."
  73.  
  74. Et il est reparti..
  75. Après quelques heures de cogitation, c'était fait.
  76. Petit-Joueur est désormais capable de gérer les modules PowerPackés.
  77. ATTENTION : La PowerPacker.library est indispensable.
  78. Beaucoup de sécurités ont été rajoutées avec leur cortège de messages d'erreur.
  79.  
  80. En deux mots : vous cliquez sur "Charger", vous choisissez un module, si vous
  81. vous plantez, hop un message d'erreur, si c'est bon, vous cliquez sur "Jouer".
  82. Quand vous en avez marre : "Stopper" et le silence reprend ses droits.
  83. "Ejecter" renvoie le module dans ses quartiers (et libère la mémoire). Le
  84. gadget "Filtre" permet de commuter le filtre ou de l'enlever.
  85. "A propos" pour avoir un peu de lecture et en cliquant sur le bouton de
  86. fermeture de la fenêtre, et après confirmation, zou, tout le monde dehors.
  87. Toutes ces options sont accessibles depuis le menu.
  88.  
  89. Pas plus compliqué !
  90.  
  91. Un peu de technique :
  92.  
  93. Taille du source : 14907 octets (avec les commentaires).
  94. Taille de l'exécutable : 14872 octets.
  95. Compilé avec Amiga-E compiler v3.2e © Wouter Van Oortmerssen 1991-95.
  96. Interface réalisée avec GadToolsBox v2.0b © Jaba Development 1991-93.
  97. Fichier .gui traduit en code E avec Gui2E v0.1 © NazGûl 1993.
  98. Contient trois gouttes d'assembleur (et pas du Z80 !)..
  99.  
  100.  
  101.  
  102. Historique :
  103.  
  104. - Version 1.0 (Mars 95)    : Version initiale.
  105.  
  106. - Version 1.1 (Juillet 95) : Gère les modules PowerPackés.
  107.                  Beaucoup de sécurités rajoutées.
  108.                  Code plus optimisé.
  109.  
  110. - Version 2.0 (Juillet 96)  : 
  111.                              Elle corrige un ENORME bug : les modules
  112.                              pouvaient être chargés en mémoire FAST ce qui
  113.                              les rendaient illisibles !! A présent seule la
  114.                              mémoire CHIP est utilisée..
  115.                              Le sélecteur de fichier est amélioré.
  116.                              Le répertoire en cours est mémorisé.
  117.                              Toutes les options sont accessibles par un menu.
  118.                              Le menu s'adapte automatiquement au Kickstart
  119.                              (Newlookmenu pour l'OS 3).
  120.                              Une gestion du filtre est intégrée.
  121.                              Toutes les erreurs sur fichier indiquent le nom
  122.                              du fichier choisi.
  123.                              Ne plante plus avec des noms de fichier trop longs
  124.                              ou possédant un long chemin d'accès. 
  125.                              N'interrompt plus le module en cours si aucun
  126.                              fichier n'est choisi dans le sélecteur de fichier.
  127.                              Nouvelle interface graphique.
  128.  
  129. En fait, cette version aurait du être numérotée 1.2 mais elle a été changée en
  130. 2.0 pour faire la différence avec les v1.x qui plantent parfois avec de la FAST
  131. RAM *:-(
  132.  
  133. Bug connu à ce jour : La détection automatique de l'état du filtre fonctionne
  134. "quand elle veut" !
  135.  
  136.  
  137.  
  138. Si vous voulez me lancer d'autres défis (eh ! c'est pour rire !! ) :
  139.  
  140.  
  141.                                Béryl DAVID
  142.                         Résidence Parc du Château
  143.                            4 place Vincent Van Gogh
  144.                              33700 MERIGNAC
  145.                                  FRANCE
  146.  
  147. Plus rapide : 3614/15 Amigatel, bal KalimérO
  148.  
  149. Ce proggy est 100% FREEWARE. Vous pouvez donc le refiler à qui vous chante tant
  150. que vous voulez sans pour autant vous en mettre plein les poches et à condition
  151. de fournir tous les fichiers intacts.
  152.  
  153. Je tiens à remercier :
  154.  
  155.   - Risitop et Offset du serveur Amigatel pour leurs inestimables astuces de
  156.     programmation.
  157.  
  158.   - André "NazGûl" Capus pour ses nombreux sources E mis en domaine public dont
  159.     je me suis largement inspiré.
  160.  
  161.   - Jaba Development pour le génial GadToolsBox.
  162.  
  163.   - Olivier "Twenty One" Anh du BUGSS (Bordeaux Users Group of Scientific
  164.     Students) pour la traduction intégrale de la doc du E (je t'aurais bien
  165.     donné un coup de main, mais là, j'ai vraiment pas le temps..! *;)
  166.  
  167.   - Wouter Van Oortmerssen (à vos souhaits !) pour avoir créé ce merveilleux
  168.     langage qu'est le E.
  169.  
  170.  
  171. PowerPacker et la PowerPacker.library sont (c) par Nico François.
  172.  
  173.  
  174. Voilà ! Amis codeurs, essayez le E, vous risquez vraiment d'être (agréablement)
  175. surpris *;-)
  176.  
  177.  
  178.                                                                     Kali.
  179.  
  180.  
  181. P.S. : Non, je vous assure que je ne suis pas fou (encore que..), je me parle
  182.        souvent quand je suis seul...surtout quand je code !!!
  183.